# （1）定义一个显示姓名、年龄、性别的函数，且默认性别为男；
def show_info(name, age, sex='男'):
    print("*" * 50)
    print(f"姓名为：{name}")
    print(f"年龄为：{age}")
    print(f"性别为：{sex}")
    print("*" * 50)


# （2）调用函数，观察程序执行结果；
show_info('张三', 18)
show_info('张三', 18, '女')
show_info(name='张三', age=28)
show_info(name='张三', age=28, sex='女')


# （3）思考1：可以定义多个缺省参数吗？
def show_info2(name='张三', age=99, sex='男'):
    print("*" * 50)
    print(f"姓名为：{name}")
    print(f"年龄为：{age}")
    print(f"性别为：{sex}")
    print("*" * 50)


show_info2('李四')
show_info2()


# （4）思考2：能否把缺省参数放在前面呢？
# non-default parameter follows default parameter
# 默认参数后不能有非默认参数
# def show_info3(name='张三', age=99, sex):
#     print("*" * 50)
#     print(f"姓名为：{name}")
#     print(f"年龄为：{age}")
#     print(f"性别为：{sex}")
#     print("*" * 50)
